Enforcing Murphy's Law for Advance Identification of Run-time Failures

نویسندگان

  • Zach Miller
  • Todd Tannenbaum
  • Ben Liblit
چکیده

Applications do not typically view the kernel as a source of bad input. However, the kernel can behave in unusual (yet permissible) ways for which applications are badly unprepared. We present Murphy, a language-agnostic tool that helps developers discover and isolate run-time failures in their programs by simulating difficult-to-reproduce but completely-legitimate interactions between the application and the kernel. Murphy makes it easy to enable or disable sets of kernel interactions, called gremlins, so developers can focus on the failure scenarios that are important to them. Gremlins are implemented using the ptrace interface, intercepting and potentially modifying an application’s system call invocation while requiring no invasive changes to the host machine. We show how to use Murphy in a variety of modes to find different classes of errors, present examples of the kernel interactions that are tested, and explain how to apply delta debugging techniques to isolate the code causing the failure. While our primary goal was the development of a tool to assist in new software development, we successfully demonstrate that Murphy also has the capability to find bugs in hardened, widely-deployed software.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Breaking Murphy's Law. How to reduce the risk of a regulatory failure.

The complexity of health care means compliance failures are practically inevitable. How can the board protect itself and the organization?

متن کامل

Planning for Murphy's Law: Uncertainty in CIRCA

Planning with Incomplete Information for Robot Problems Stanford, CA, March 1996, pp. 71-73 Planning for Murphy's Law: Uncertainty in CIRCA David J. Musliner & Kurt D. Krebsbach Automated Reasoning Group Honeywell Technology Center 3660 Technology Drive Minneapolis, MN 55418 fmusliner,[email protected] Abstract Anything bad that can happen will happen. Plan accordingly. Introduction M...

متن کامل

Murphy: An Environment for Advance Identification of Run-time Failures

Applications do not typically view the kernel as a source of bad input. However, the kernel can behave in unusual (yet permissible) ways for which applications are badly unprepared. We present Murphy, a language-agnostic tool that helps developers discover and isolate run-time failures in their programs by simulating difficult-to-reproduce but completely-legitimate interactions between the appl...

متن کامل

The relationship between competition law and capital market in Iran

stock market is run by special regulations. accordingly, analyzing the issues about the relation between the competition law and capital market such as stock market officials and their boundaries in the context of setting, controlling and  enforcing rules, the generality or specificity of such rules, the controllability of stock market in comparison to the general competition rules and the stat...

متن کامل

Randomization in On-line Algorithms

Motto: \\T]ime is unidirectional, past events cannot be reversed, the future is uncertain , and Murphy's Law rules" 39]

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2012